Robot Framework不显示log问题

问题

在使用RIDE进行UI自动化测试时,会发现经常运行第二遍不显示下方log,如下

原因

代码使用的是谷歌浏览器、IE浏览器测试,运行一次后chromedriver.exe,IEDriverServer.exe进程仍在运行中。

解决方案

方法一:每次运行后,手动关闭chromedriver.exe或者IEDriverServer.exe;
方法二:将下面代码保存为批处理,每次运行后手动运行一下:

1
2
3
taskkill /f /im chromedriver.exe
taskkill /f /im IEDriverServer.exe
taskkill /f /im geckodriver.exe

方法三:封装成keywords
step1:

1
2
3
4
5
def close_process(self, process_name):
"""Close a process by process name."""
if process_name[-4:].lower() != ".exe":
process_name += ".exe"
os.system("taskkill /f /im " + process_name)

step2:
保存上述文件至py文件,然后在RIDE中引用,并创建关键字

1
2
3
Teardown
Close Process chromedriver #谷歌
Close Process IEDriverServer #IE

step3:
将Teardown加入test setting:

1
2
*** Settings ***
Test Teardown Teardown

欢迎打赏!